#include <deque>

using namespace std;

class Point
{
public:
	Point(int x=0, int y=0):_x(x),_y(y){}
	int GetX() const { return _x; }
	int GetY() const { return _y; }
private:
	unsigned short _x;
	unsigned short _y;
};

class Snake
{
public:
	Snake(int length=0)
	{
		Eat(length);
	}

	void Eat(int countOfFood)
	{
		Point p(0,0);
		
		for (int i = 0; i < countOfFood; ++i)
			_snake.push_back(p);
	}
	
	int GetLength() const
	{	
		return _snake.size();
	}

	Point GetPosition(int index) const
	{
		return _snake[index];
	}
private:
	typedef deque<Point> SnakeContainer;
	typedef SnakeContainer::iterator SCIterator;

	SnakeContainer _snake;
};


